const jwt = require('jsonwebtoken')
const config = require('./config')
const Token = {
  //  生成
  encrypt: function (data, time = 60 * 60 * 24 * 7) {
    //data加密数据 ，time过期时间  60 * 30  （30分）
    return jwt.sign(data, config.jwtSecretkey, { expiresIn: time })
  },
  // 解析
  decrypt: function (token) {
    try {
      let data = jwt.verify(token, config.jwtSecretkey)
      return {
        data,
        token: true
      }
    } catch (e) {
      return {
        token: false,
        data: e
      }
    }
  }
}

// 测试
// let token = Token.encrypt({ data: 123456 })
// console.log(token)
// let { data, token: tokenFlag } = Token.decrypt(token)
// console.log(data)
// console.log(tokenFlag)

module.exports = Token
